WindowX zh CN · Panuon/Panuon.WPF.UI Wiki · GitHub 您所在的位置:网站首页 wpf page 加载 WindowX zh CN · Panuon/Panuon.WPF.UI Wiki · GitHub

WindowX zh CN · Panuon/Panuon.WPF.UI Wiki · GitHub

2023-05-26 22:48| 来源: 网络整理| 查看: 265

WindowX 窗体X

返回目录

适用于:   v1.0.0 或更新的版本

概述

类名:    WindowX 命名空间:    Panuon.WPF.UI 位于:    SharedResources/Panuon.WPF.UI/Controls/WindowX.cs 继承自:    System.Windows.Window, System.ComponentModel.INotifyPropertyChanged

提供一系列属性和方法, 用于扩展 Window 控件的功能。 有关为窗体自定义标题栏的更多内容, 请参考 WindowXCaption 标题栏辅助类。 有关为窗体提供模态按钮的更多内容,请参考 WindowXModalDialog 模态对话框辅助类。

滚动至示例

备注 属性间的相互作用

当 IsEnabled 属性的值设为 False 时, Opacity 的属性值将与 GlobalSettings.Setting.DisabledOpacity 属性的值绑定(它的默认值为 0.4)。有关全局设置的更多内容, 请参考 GlobalSettings 辅助类。 当 IsMaskVisible 属性的值设为 True 时, DisableDragMove 的属性值将被置为 True 。 当 IsFullScreen 属性的值设为 True 时, WindowStyle 的属性值将被置为 None 。

自定义样式提示

InteropOwnersMask 属性的默认值为 True , 父窗体的遮罩层将随当前窗体的打开或关闭同步发生变化。 WindowX 默认不支持圆角, 但你仍然可以通过修改 WindowChrome.WindowChrome 属性来定义窗体圆角(但这将使你的窗体失去阴影,或失去拖拽调整窗体大小的功能。在Net40中修改 WindowChrome.WindowChrome , 你还需要引用 xmlns:shell="http://schemas.microsoft.com/winfx/2006/xaml/presentation/shell" 命名空间)。要查看设置圆角后的效果,参见示例4。 在使用 WindowX 时,你的页面后端 .xaml.cs 中的窗体继承基类也要从 Window 更改为 Panuon.WPF.UI.WindowX。否则将引发编译失败。

依赖属性 IsEscEnabled

类型:    System.Boolean 默认值:    False 获取或设置是否允许用户按下Esc键来关闭窗体。

IsFullScreen

类型:    System.Boolean 默认值:    False 获取或设置是否进入全屏模式。

IsF11Enabled

类型:    System.Boolean 默认值:    False 获取或设置是否允许用户按下F11键来切换全屏模式。

CanClose

类型:    System.Boolean 默认值:    True 获取或设置是否允许当前窗体被用户关闭(包括强制关闭)。调用 Close() 仍然可以正常关闭窗体。

DisableDragMove

类型:    System.Boolean 默认值:    False 获取或设置是否允许当前窗体被拖拽更改位置。

IsMaskVisible

类型:    System.Boolean 默认值:    False 获取或设置是否显示窗体遮罩。

MaskBrush

类型:    System.Media.Brush 默认值:    #B3FFFFFF 获取或设置窗体遮罩的色彩画刷。

Overlayer

类型:    System.Object 默认值:    {Null} 获取或设置覆盖层的内容。覆盖层位于窗体遮罩之上。

IsOverlayerVisible

类型:    System.Boolean 默认值:    False 获取或设置是否显示覆盖层。

Backstage

类型:    System.Object 默认值:    {Null} 获取或设置幕布层的内容。幕布层位于窗体内容与窗体遮罩之间。

IsOverlayerVisible

类型:    System.Boolean 默认值:    False 获取或设置是否显示幕布层。

InteropOwnersMask

类型:    System.Boolean 默认值:    True 获取或设置是否自动与 Owner 窗体的遮罩层进行交互。若父窗体为 WindowX 类型:窗体打开时自动打开父窗体的窗体遮罩;窗体关闭时, 若父窗体没有其他的子窗体, 则自动关闭父窗体的窗体遮罩。

Effect

类型:    Panuon.WPF.UI.WindowXEffect 默认值:    Null 获取或设置窗体X的特效(可用的特效仅对WindowX控件生效,不支持其他控件)。较早的Windows版本可能不支持使用特效。 该属性自v2.2.12-alpha以上可用。

Aero 玻璃特效

Acrylic 亚克力特效

请注意,由于系统原因,在Windows 10 1903以上的版本中,启用此特效并拖拽、缩放窗体会造成显著延迟与卡顿。

附加属性 IsDragMoveArea

类型:    System.Boolean 默认值:    False 获取或设置是否将该控件标记为窗体拖拽区域的一部分。请注意, 如果没有为控件指定非 Null 的背景色, 拖拽可能不会生效。

方法 Minimize()

最小化当前窗体。

Maximize()

最大化当前窗体。

Normalmize()

正常化窗体大小。

MaximizeOrRestore()

最大化窗体(如果窗体状态为正常化)或正常化窗体(如果窗体状态为最大化)。

MinimizeOrRestore()

最小化窗体(如果窗体状态为正常化)或正常化窗体(如果窗体状态为最小化)。

NotifyOfPropertyChange([CallerMemberName] string propertyName = null)

通知属性发生了变化。仅在 DataContext = this 时可用。

NotifyOfPropertyChange(Expression property)

通知属性发生了变化。仅在 DataContext = this 时可用。

Set(ref T identifer, T value, [CallerMemberName] string propertyName = null)

设置字段对应的属性值, 并通知属性发生了变化。仅在 DataContext = this 时可用。

命令 MinimizeCommand

最小化当前窗体。

MaximizeCommand

最大化当前窗体。

CloseCommand

关闭窗体。

示例 示例1

示例2

示例3

示例4



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有